This invention relates to computer systems and collection of information regarding users. More particularly, the invention relates to delayed uploading of user registration data.
Uses for computers in our daily lives are continually expanding. As these uses expand, it is beneficial for the manufacturers of both the computers and the software the computers ran to have information on the manner in which the computers and software are used, as well as information on the users of the computers and software. Having such information assists the manufacturers in designing and creating computers and software that are more useful and better aligned with users"" needs and desires. Providing such information is also beneficial to consumers on a daily basis because the software/computer maker can personalize the user""s computer/software experience by establishing an ongoing electronic relationship with the consumer.
One approach to obtaining such information is to collect xe2x80x9cregistration informationxe2x80x9d or xe2x80x9cregistration dataxe2x80x9d from the user and transmit it to the manufacturer. Registration information refers to demographic and other information regarding the user and the user""s computer, such as information regarding the user""s intended use of the computer or software, the user""s preferred activities, hobbies, other computer hardware or software components or peripherals that are being used in conjunction with the computer or software, the user""s electronic mail address and locale information (such as zip code), etc. The registration information may also include information regarding the computer itself (e.g., identification numbers, processor type, amount of memory, connected peripheral devices, etc.).
Registration information is typically collected via one or more xe2x80x9cregistration wizardsxe2x80x9d, each of which is a program that is executed when the computer is initially set up by the user or the software is installed. The registration wizard asks the user various questions to elicit the registration information, and may also interrogate the computer itself to obtain information (e.g., processor type) regarding the computer. There is typically a different registration wizard for the computer, one or more of the software programs being run on the computer, and sometimes for additional peripheral devices coupled to the computer (e.g., printers or scanners).
Once the registration information is collected, the registration wizard transmits or xe2x80x9cuploadsxe2x80x9d the collected information to a registration database, from which a manufacturer is able to subsequently retrieve the collected information. The registration database is typically accessed via a network (e.g., the Internet), or via a direct-connection (e.g., a direct phone call to a computer system maintaining the registration database).
However, a wide variety of problems can be encountered during this uploading process. For example, the computer""s modem may not be working properly or may not be turned on, the modem may not be connected to a phone line yet, the phone line that needs to be used to make the call may be in use by someone else (or another computer) at the time, the phone number that is being called may be busy, there may be problems in the connection to the Internet that prevent establishing a connection to the registration database (e.g., Internet usage is too heavy), the registration database may not be operational (e.g., down for maintenance), etc.
Typically, when one of these problems is encountered, the registration wizard terminates. No further attempt is made to upload the registration information to the registration database unless the registration wizard is run again by the user, which is very unlikely. Thus, when one of these uploading problems occurs, the registration information is typically not provided to the registration database, resulting in the computer manufacturer or software maker never receiving the registration information and the user""s experience suffering as a result.
The invention described below addresses these disadvantages of the prior art, providing a way to upload user registration data despite problems encountered during the uploading process.
A client computer is configured to collect registration information regarding a user and/or the client computer and upload the collected information to a remote registration system. The client computer stores the registration information locally for as long as necessary until a connection to the remote registration system is established. When a connection to the remote registration system is established, the registration information is uploaded to the registration system automatically, without additional user action. The uploading of the registration information can be delayed as long as necessary, simply waiting for a connection to the registration system to be established.
According to one aspect of the invention, once the registration information is collected from the user an attempt is made to connect to the registration system. If the attempt is successful, then the registration information is uploaded at that time and delayed uploading is not necessary. However, if the attempt is unsuccessful, then the client computer stores the registration information locally and delays uploading of the registration information until a connection to the registration system is established.
According to another aspect of the invention, the client computer stores the registration information locally as soon as it is collectedxe2x80x94no attempt is made as part of the registration process to connect to the registration system. The client computer then waits for a connection to the registration system to be initiated by some other program. The client computer takes advantage of this connection to transmit the registration information to the registration system. Thus, uploading of the registration information is delayed until another (non-registration program) initiated connection to the registration system is made (for example a phone call to connect the user to the Internet).